package shoppingmall.reception.mapper;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import shoppingmall.reception.pojo.UserAddress;

import java.util.List;

/**
 * 平台会员用户地址Mapper层-提供地址crud服务
 * tb_user_address
 */
@Mapper
public interface MemberAddressMapper {

    /**
     * 根据平台会员id查询当前会员的地址列表集合
     */
    public List<UserAddress> getMemberAddressList(int userId);

    /**
     * 为某个会员用户添加一条收货地址信息
     */
    public void saveUserAddress (UserAddress userAddress);

    /**
     * 为某个会员用户更新一条收货地址信息
     */
    public int updateUserAddress (UserAddress userAddress);

    /**
     * 为某个会员用户删除一条收货地址信息
     */
    public int deleteUserAddress (int addressId);

    /**
     * 查询一条地址信息(根据user_id 及 default_address = true)[一位用户收货地址只能有一个默认的]
     */
    public List<UserAddress> getDefaultUserAddressList (int userId);

    /**
     * 根据地址id查询地址信息
     */
    @Select("select * from tb_user_address where id = #{addressId}")
    public UserAddress getAddressInfoById (int addressId);
}
